home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / perl / sun4.md / a.out.ph < prev    next >
Encoding:
Text File  |  1991-08-15  |  1.6 KB  |  53 lines

  1. if (!defined &_AOUT) {
  2.     eval 'sub _AOUT {1;}';
  3.     require 'sun4.md/sys/exec.ph';
  4.     eval 'sub N_BADMAG {
  5.         local($x) = @_;
  6.         eval "((($x). &a_magic)!= &OMAGIC && (($x). &a_magic)!= &NMAGIC && (($x). &a_magic)!= &ZMAGIC && (($x). &a_magic)!= &SPRITE_ZMAGIC && (($x). &a_magic)!= &UNIX_ZMAGIC)";
  7.     }';
  8.     eval 'sub N_PAGSIZ {
  9.         local($x) = @_;
  10.         eval "( &Aout_PageSize[($x). &a_machtype])";
  11.     }';
  12.     eval 'sub N_TXTOFF {
  13.         local($x) = @_;
  14.         eval "(($x). &a_magic== &ZMAGIC ? 0 : $sizeof{\'struct exec\'})";
  15.     }';
  16.     eval 'sub N_SYMOFF {
  17.         local($x) = @_;
  18.         eval "( &N_TXTOFF($x) + ($x). &a_text+($x). &a_data + ($x). &a_trsize + ($x). &a_drsize)";
  19.     }';
  20.     eval 'sub N_STROFF {
  21.         local($x) = @_;
  22.         eval "( &N_SYMOFF($x) + ($x). &a_syms)";
  23.     }';
  24.     require 'sun4.md/kernel/procMach.ph';
  25.     eval 'sub N_TXTADDR {
  26.         local($x) = @_;
  27.         eval " &PROC_CODE_LOAD_ADDR(*(( &ProcExecHeader *) &($x)))";
  28.     }';
  29.     eval 'sub N_DATADDR {
  30.         local($x) = @_;
  31.         eval " &PROC_DATA_LOAD_ADDR(*(( &ProcExecHeader *) &($x)))";
  32.     }';
  33.     eval 'sub N_BSSADDR {
  34.         local($x) = @_;
  35.         eval " &PROC_BSS_LOAD_ADDR(*(( &ProcExecHeader *) &($x)))";
  36.     }';
  37.     if (0) {
  38.     }
  39.     eval 'sub n_hash { &n_desc;}';
  40.     eval 'sub N_UNDF {0x0;}';
  41.     eval 'sub N_ABS {0x2;}';
  42.     eval 'sub N_TEXT {0x4;}';
  43.     eval 'sub N_DATA {0x6;}';
  44.     eval 'sub N_BSS {0x8;}';
  45.     eval 'sub N_COMM {0x12;}';
  46.     eval 'sub N_FN {0x1e;}';
  47.     eval 'sub N_EXT {01;}';
  48.     eval 'sub N_TYPE {0x1e;}';
  49.     eval 'sub N_STAB {0xe0;}';
  50.     eval 'sub N_FORMAT {"%08x";}';
  51. }
  52. 1;
  53.